/* Button Component - Custom pseudo-class styles using CSS custom properties */
/* `:not(:disabled)` so a disabled button never paints the pressed/active
   border — `--button-border-active` isn't updated while disabled (see
   button.js), but a stale value from a previous enabled render can linger on
   the same element's inline style, so the selector itself must gate it too. */
[data-button]:active:not(:disabled) {
  border-color: var(--button-border-active, inherit) !important;
}

/* VSTS 1282590: keep the active/success border while a disclosure button's
   dropdown stays open, even after focus moves to inputs inside the panel. */
[data-button][data-open="true"]:not(:disabled) {
  border-color: var(--button-border-active, inherit) !important;
}

/* `:not(:focus-visible)` scores one class-level higher than the `:active` rule
   above, so while the mouse is held down on a button (which is both :active and
   :focus) this used to win and paint the focus border over the pressed one.
   `:not(:active)` yields the pressed state back to the rule that owns it. */
[data-button]:focus:not(:focus-visible):not(:active):not(:disabled) {
  border-color: var(--button-border-focus, inherit) !important;
}

[data-button]:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  --tw-ring-width: 0px !important;
  --tw-ring-offset-width: 0px !important;
}

[data-button]:focus-visible::after {
  display: none !important; 
  content: none !important;
}

.link-container a {
  color: var(--text-link-default);
}
